Autonomous control method and process for an investment casting shell

ABSTRACT

A predictive industrial control system for controlling individual cells of machines through multiple Programmable Logic Controllers in an investment casting processing and handling operation. An application server located in a remote, non-industrial environment executes an industrial control application (ICA) utilizing tagged reference names corresponding to individual machines and information input devices such as sensors on the production line. The ICA accesses local databases that hold casting shell part numbers and their associated recipe control words, and monitors the system for new shell part numbers as they appear on a load conveyor in the production line. Radio Frequency tags on the part signal the ICA to transfer the appropriate recipe control words and robot moves required to process the part in a primary processing cell&#39;s PLC. The PLC then controls each machine in the primary processing cell in accordance with the downloaded commands from the ICA. The control program downloaded into the PLC at boot-up is written such that machines connected to the PLC may operate independently from the ICA during a selected number of dip cycles. Since processing instructions are downloaded in a predictive manner well ahead of any situation requiring new instructions, the processing of the ICA instructions on the remote server or communications on a slow industrial network does not limit the processing throughput of each cell; and therefore, the production line throughput. The system allows for alteration of the sequence of processing steps from automatic to manual modes as desired without seriously hampering the system throughput.

FIELD OF THE INVENTION

The present invention relates generally to industrial control systems.In particular, the invention pertains to control methods for investmentcasting shell handling systems, and methods of autonomous control ofgroups of machines through a programmable logic controller.

BACKGROUND OF THE INVENTION

Investment casting systems have recently increased in complexity tofabricate more intricate and complex metal parts. In the past, producingan investment casting required the relatively simple steps ofsurrounding a wax or foam mold with sand in a gondola into which themolten metal is poured in a sacrificial or molten replacement of themold. Automation consisted of moving a gondola mounted on a railedconveyor to a particular station at which a particular processing stepof the casting within the gondola carrier was completed. Mainly, thesesteps consisted of pouring sand into the gondola to surround thesacrificial mold and then pouring a metal alloy into the mold. Controlsystems consisted of operator initiated switching and preset loadingoperations based upon gondola positioning. Intelligent control was ahuman operator initiating each machine in sequence based upon knowntiming constraints.

However, investment casting steps have evolved to be able to produce farmore complex parts using a variety of alloys. Today, casting “shells”made up of successive layers of ceramic materials are built up around asacrificial wax or foam mold. These shells fully encase the mold andfunctionally replace the bulky gondola and sand supports previouslyused. Once a suitable shell is created around the mold, molten metal ispoured directly into the shell through a shaped cemented into the shellduring its fabrication. The sacrificial core is molten or vaporized andthe shell is extracted from the newly cast part during the clean-upprocess.

Building up the successive layers of ceramic material around the moldrequires a sequence of repetitive steps of dipping the molds intovarious mixtures of glue/cement slurries and then surrounding the coatedmold with fluidized sand and drying. The duration and environmentalconditions of each drying step, in conjunction with the type of sandapplied to the specialized slurry coating greatly affects the propertiesof the final shell created. Therefore, specific “recipes” are designedfor each particular casting shell part to achieve each shell's desiredproperties.

Due to the many variations within recipes, automation of shellmanufacturing is complex. Robot manipulators, fluidized barrels orrainfall sanders, temperature controlled ventilation fans, and conveyorscarrying wax or foam molds must work in a coordinated effort to make adesired casting shell in accordance with a specified recipe.Furthermore, different types of shells for casting different types ofmetal parts are often made on the same shell assembly line, utilizingthe same machines. In order to automate manufacturing of the varioustypes of shells on one assembly line, “cells” of processing machinesmust be able to automatically recognize what type of shell has enteredthe production line and automatically configure their processing stepsin accordance with a particular recipe associated with the shell part.Typically, this will entail automatic recognition of the shell partthrough radio frequency or bar coded tags affixed to the part. Also,multiple conveyors must move in a coordinated effort, sometimesthroughout a large facility, to and away from each processing cell.

Previously, during the evolutionary advancement of industrial controls,robot manipulators and other processing machines included relativelysimple programmable memory which was preprogrammed to initiate tasks inresponse to external conveyor sensors. Little or no communicationoccurred between each machine and overall system level controlrudimentary. These machines were therefore mostly autonomous and actedas a master with respect to any connected programmable logic controllers(PLCs). The PLCs were simply programming conduits through whichindividual robots could be programmed.

In response to the necessity to coordinate robot and machine actions,newer systems have included real-time databases on the factory floor towhich machines are connected through PLCs. In these types of “real-time”systems, a processor, typically the CPU in a Personal Computer locatedon the factory floor, accesses data elements in a resident database andin response issues commands to the machines through the PLCs. In thesenewer arrangements, machines and manipulators receive their movementinstructions through the PLCs, which act as a bi-directionalpass-through multiplexer to which multiple robot and machines might beconnected.

However, high speed complex processing on a factory floor tends to beless reliable than remote processing away from resident electromagneticpulse (EMP) interference. Furthermore, factory floor data communicationsnecessitates multiple error correcting protocols and hinders the speedat which data may be transmitted. For example, Allen Bradley's wellknown Data Highway Plus™ network transmits data at 240 k bits/sec fornetworks extending to 10,000 feet. This is slow in contrast to thenominal local area networks which transmit data a 10 to 100 Mbits/secrate. Currently, with the addition of proper shielding, such networksare beginning to be installed directly on the factory floors allowingincreased data communications rates between PLCs. However, older, morereliable networks, such as the DH+ are the norm, and the added shieldingexpense and increased error rates are prohibitive.

For complex investment casting shell handling operations in which dozensof machines, sensors, and conveyors, in dozens of different processingcells must communicate, factory floor networks limit the processingpower of the CPU accessing the real-time data from the floor network.Moreover, complex processing in an application server or PC results inlimiting factory floor operations by making the distributed PLCsdependent upon real-time commands from a control application running onthe server.

From the foregoing, modem casting shell systems require an informationtopology and method in which complex processing can be removed from thefactory floor and commands automatically distributed to PLCs on thefactory floor in a predictive manner, and from which sensor and statusinformation can be retrieved and displayed at remote locations. Ineffect, a need exists for a factory processing system in whichdistributed PLCs on the factory floor become individual mastercontrollers over machines in associated individual processing cells, andfrom which a remote industrial control application server may service aplurality of individual master PLCs on a factory floor at the request ofan individual PLC.

SUMMARY OF THE INVENTION

It is the object of the present invention to provide a predictiveindustrial control system in which a computer server can access andprocess information from local and remote databases and then pass groupsof commands to programmable logic controllers on a factory floor uponrequest.

Another object of the present invention is to provide an autonomouscontrol topology in which groups of commands may be downloaded intoprogrammable logic controllers on the factory floor for controllingconnected machines.

A further object of the invention is to provide an industrial controlsystem in which programmable logic controllers on the factory floor actas master controllers for cells of connected machinery.

A still further object of the present invention is to provide a uniquecontrol word format or encoding casting shell processing commands.

Another object of the present invention is to provide processingscalability of multiple processing cells in response to increasedproduction activity.

And yet another object of the present invention is to providedistributed processing on an industrial production line through multipleprogrammable logic controllers.

In summary, the invention is an industrial control system forcontrolling individual cells of machines through multiple PLCs in aninvestment casting processing and handling operation. An applicationserver located in a remote, non-industrial environment executes anindustrial control application (ICA) utilizing tagged reference namescorresponding to individual machines and information input devices suchas sensors on the production line. The ICA accesses local databasesincluding a Dynamic Data Exchange (DDE) database for holding PLC controlstatus information and a Structured Query Language (SQL) database forholding casting shell part numbers and their associated recipe controlwords. The ICA monitors the DDE database and as a new shell part numberappears on a load conveyor in the production line, Radio Frequency (RF)tags on the part update the DDE database and signal the ICA to transferthe appropriate recipe control words and robot moves required to processthe part to the primary processing cell's PLC. The PLC then controlseach machine in accordance with the downloaded commands from the ICA.The control program downloaded into the PLC at boot-up is written suchthat machines connected to the PLC may operate independently from theICA during a selected number of dip cycles. Since processinginstructions are downloaded in a predictive manner well ahead of anysituation requiring new instructions, the processing of the ICAinstructions on the remote server or communications on a relatively slowmultiple error correcting protocol network such as DH+ does not limitthe processing throughput each cell; and therefore, the production linethroughput. Furthermore, the system allows for alteration of thesequence of processing steps from automatic to manual modes at willwithout seriously hampering the system throughput.

Other features and objects and advantages of the present system willbecome apparent from a reading of the following description as well as astudy of the appended drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

An investment casting shell handling and processing control systemincorporating the features of the invention is depicted in the attacheddrawings which form a portion of the disclosure and wherein:

FIG. 1 is a topological diagram showing the different logical elementsof the control system and the relative flow of information between them;

FIG. 2 is system diagram of a typical investment casting conveyor systemwith multiple processing cells;

FIG. 3 is an magnified view of a processing cell showing its individualcomponents;

FIG. 4 is a screen display from the ICA of a representative recipelisting showing casting part descriptions and their associated recipenumbers saved in the SQL database;

FIG. 5 is a screen display of the individual dip cycles and associatedrobot commands and dry times for a representative casting part;

FIG. 6 shows a screen display listing a subset of robot commands andtheir associated descriptions;

FIG. 7 shows another screen display listing a second subset of robotcommands and their associated descriptions;

FIG. 8 is an example control word resulting from an individual dip cycledisplayed in FIG. No. 5;

FIG. 9 is a formatted listing of a subset of the contents of the PLCmemory showing the memory image of a logical device;

FIG. 10 is a logical flow diagram showing the sequence of actions of acell in response to the loading and arrival of a casting mold part atthe cell for processing;

FIG. 11 is a logical flow diagram showing the sequence of path analysisprocedure application (see FIG. 12);

FIG. 12 is a logical flow diagram showing the Path Analysis Procedure;and,

FIG. 13 is a logical flow diagram showing the empty hanger returnprocedure.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

For purposes of illustration the present invention will be described inwith reference to an investment casting core coating operation; however,it is to be understood that the invention may be utilized in othermaterials handling applications wherein distributed control networks canbe employed.

Referring to FIGS. 1 and 2, a prefabricated core C is input into thesystem at a loading station on a hanger to be carried by a load conveyor24 which may have any number of hangers and cores thereon at any giventime. Sensor such as a photo scan, bar code, RF scanner immediatelyreads a “tag” on the core hanger. Load conveyor 24 delivers core C to aprimary processing cell 31 where core C is to be coated as referred toabove. Primary processing cell 31 includes a robotic manipulator 33under the control of a primary processing cell programmable logiccontroller (PLC) 13. Robotic manipulator 33 is positioned to move ahanger and associated core selectively to positions within its reachwhere a variety of processing units, the function of which are wellknown in the industry, are located including one or more slurry tanks 36having a predetermined coating composition therein, one or more barrelsanders 43, one or more rainfall sanders 38, and a pre-wet tank 37.Manipulator 33 can also position the hanger and core at a pick up zonefor placement onto a rapid dry conveyor 27, a final dry conveyor 28, ora transfer conveyor 26. One or more back-up processing cells 41, 51 areprovided having all of the components described with reference toprimary cell 31, except that transfer conveyor 26 is common to allprocessing cells. In FIG. 2, the final dry conveyor 28 at cell 31 is notshown in the interest of claimant. The final conveyor 28 of eachprocessing cell connects to an Unload station 60. Each processing cellhas its own PLC which controls the manipulator and processing unitsdescribed; however, Transfer conveyor 26 is under the control of PLC 13of the primary processing cell 31. An exemplary PLC suitable for thepurposes of the present invention is the Allen Bradley SLC-500, 5/05series. A robotic manipulator suitable for the purposes of the presentinvention is an IRB 4400 manufactured by Asea Brown Boveri. For thepurposes of the present invention a manipulator is required which hason-board memory and processing such that a number of movements can be“taught” to the robot and stored in memory for selective recall. Thesetaught movements are the building blocks for the system as hereinafterdescribed.

The various components hereinabove described are connected by a network17, that is to say, electrical connections for passing data and controlsignals to and between various components. Typical connections betweenPLC's and units under their control will be by serial connection such asRS-232 or RS-485 links, Ethernet®, or other suitable links. The PLCswill also be connected to each other by such links. A description of thephysical interconnection is not deemed necessary, such being well knownin the art.

With the foregoing system components operably connected to process coresfrom the loading station through the processing cell to the unloadstation, the novel features of the invention will now be described. Itshould be understood that each movement of a robotic manipulator isstored at the robot and can be electronically retrieved and replicatedby the robotic manipulator upon an appropriate coded command from theassociate PLC. Likewise, each processing unit can be activated, indexed,or otherwise appropriately controlled by the PLC. Each type core andshell component will have a different processing sequence which consistsof a plurality of movements of the manipulator and associated actions bythe processing units called dip cycles and drying times after each dipcycle. Knowledge of the resident robotic movements and the retrievalcodes allows the cell and the units therein to be controlled based onthe type core and shell desired. To achieve a distributed controlnetwork which allows seemingly autonomous work by each cell, we havedevised a control network including a server 11, wherein an industrialcontrol application or program is stored and executable, a localdatabase 14 in which a dynamic database memory in which a dynamicdatabase exchange (DDE) database is maintained, and a Structured QueryMemory in which a Structured Query Language (SQL) database ismaintained. The SQL database contains core part numbers and controlwords as described hereinafter. The DDE database contains constantlyupdated status information from each cell and conveyor. Each hanger hasmachine readable indicia on it, e.g. bar code, RF Tag. Inasmuch as eachtype core will have a specific processing sequence, information on thesequence can be used to define which processing units are required toperform their operation on the core. By digitally defining eachprocessing cell and certain of its components a control word can begenerated which carries encoded information about which robot is allowedto execute a particular dip cycle and which conveyor the particular typecore is to be picked up from and set down on. A recipe for each typecore is thereby defined by the sequence of dip cycles and the code wordfor the core. For each type core to be handled by the system a recipe isstored in the SQL database. Accordingly, the recipe for a core can beassociated with the hanger bearing it by the indicia on the hanger.

Likewise, by defining each position in the system and each hanger by itsindicia, the DDE database may be constantly updated to provideinformation about the status of the entire system. Sensors can belocated throughout the system to identify and track hangers in thesystem. The output of these sensors can be used as control signals ordatabase entries to the DDE database.

Referring to FIG. 1 for a better understanding of the function andstructure of the invention, the control system 10 includes an industrialcontrol application (ICA) running on an application server 11. The ICAincludes capability for tagging and communicating with various elementswithin the system. The ICA also has the capability to access multipledatabases simultaneously and allow a user to alter the system's functionand input new information in the databases on the fly. One example of anICA capable of accomplishing these goals is the industrial controlprogram InTouch™ produced by Wonderware® Inc. Running under a Microsoft®Windows™ operating system, InTouch™ allows for the creation of agraphical man-machine interface (MMI) showing the investment castingsystem's components. Each graphically represented component has anassigned address tag name compiled into a data dictionary for storing ofall system components in a database. Also, processing recipes (see FIG.5) may be created for each casting part that is to be produced thatcontains a sequence of control words (see FIG. 8) that are in turndownloaded into an appropriate Programmable Logic Controller (PLC) 13 atthe appropriate time (See FIG. 9). The format of the screens in the MMI,the data correlation functions, tag names, control functions, thedatabase formats, and the general system interaction among thecommunicating components through the ICA, including the data wordformats, are designed by the user and are not pre-created by the ICA. Inaddition to an MMI, InTouch™ includes utility programs to interface withand export to Dynamic Data Exchange™ (DDE) and Structured QueryLanguage™ (SQL) databases in local database 14. The parts recipes aretypically stored in the local SQL database, and component interfacecommands and component status are typically stored in the DDE database.Storing the ICA information in DDE and SQL compliant database, such asMicrosoft Access™ or Oracle™, allows remote access and manipulation ofsystem information from remote points on the network. Given a functionalWindows™ network, remote client work stations 16 running restrictedclient InTouch™ software can access the database across a high-speednetwork, such as an Ethernet® network, develop and load new recipes fornew casting parts, and display the current status of machines connectedto a PLC on the factory floor. Client nodes are not necessary for thecontrol systems operation; however, they allow for increased efficiencyfor additional workers to prepare new recipes in accordance withinstalled factory floor components. Other applications not a part of thenovelty of the present invention may be stored and run on otherapplication servers 18 which may access, in turn, other databases 19present on the network. Further discussion as to the working of theWindow™ interface and a description as to interaction within theWindows™ operating system between the databases and the ICA are omittedinasmuch as this information is well understood in the industry and notpertinent to an understanding of the present invention. Furtherinformation regarding the operation of individually referenced softwareand hardware components are readily available from a reading of thereferences citedin this specification.

Communication from the application server 11 to individual PLCs on thefactory floor is accomplished over any number of user selected networks.As may be seen in FIG. 1, communications links from the server 11 to thePLCs 13, 21, 22 may be high speed networks if the connected PLC has suchcapability. Application servers often have an installed interface cardas for example a 5136-SD manufactured by S-S Technologies, Inc. so thatcommunication to the PLCs may be seamlessly accomplished over a localnetwork while maintaining higher speed Ethernet® communications amonghigher level processing elements such as databases 14 and client nodes16. Regardless of the connection method between the server andindividual PLCs in the system, higher speed communications overEthernet® type networks among remote components such as the databases,servers, and client nodes would remain.

One PLC having the capability to communicate to a server over a highspeed Ethernet® network is the Allen Bradley SLC-500, 5/05 series whichis well known and well understood in the industrial control art. Furtherreferences to PLC internal elements and capabilities shall be made withrespect to the Allen Bradley SLC series which has set industry standardsthrough its wide acceptance as an industrial controller. Most industrialcontrollers either emulate or simulate SLC-500, 5/05 type features.

Local I/O communications (32) from PLC to PLC, PLC to a cell robot, PLCto conveyors, and PLC to other cell processing machines may beaccomplished via RS-232, RS-485, or DH+ communication links dependingupon installed adapter cards in each PLC. Local I/O communications occurasynchronously relative to communications with the ICA on the server. Inan operational system using all of the above components, the ICA canobtain and write to the DDE database a complete image of each PLC'smemory contents. The combination of the data dictionary tags with thesystem DDE PLC memory images allows the ICA to display and processinformation obtained from all components in the system at any instant.

Referring to FIG. 2 for a better understanding of typical systemcomponents in an investment casting operation, a system of conveyorloads 24, transfers 26, and holds (27-28) parts for drying as theyproceed through the plant. In a casting shell handling system, specialhangers hold the mold parts to be processed on an elevated conveyor tofacilitate processing and handling by robots. The load conveyor 24 hassensors for reading radio frequency tags or bar coded tags on the wax orfoam mold parts as they are loaded. Also, photo sensors are present atpickup and set down points on conveyors adjacent to robots so that arobot knows through its communication with the PLC whether a hangerholding one or more shell parts is presently at a pickup or set downposition.

Through the MMI on the application server's workstation or on a remoteclient node, an operator associates the casting part's tag number with aparticular casting part description already resident and loaded in theSQL parts database. Typically, the association process may be done wellahead of the time of actual loading of the part on the loading conveyor;however, an operator may also associate the tag number with a partdescription via a remote terminal adjacent to the entry point of thepart at the loading conveyor 24. Alternatively, the operator may simplyenter the part number affixed to the mold part which has already beenassociated in the SQL database from which part number association willoccur automatically in the ICA. Tag numbers entered and associatedeither at time of loading or prior are stored in the remote database 14for access by the ICA over the high speed network.

After loading a selected part on the load conveyor 24, the ICArecognizes that a part has been loaded on the load conveyor 24 anddownloads the processing information associated with the particular partto the primary cell PLC 13. PLC 13 controls all of the machinesassociated with processing a part in its cell via the local I/O network.PLC 13 also controls the load conveyor 24 and the transfer conveyor 26,and maintains a complete mold parts image of each part loaded on any ofits conveyors, including the transfer conveyor 26. Back-up cells A 41and B 51 process shell parts in accordance with the primary cells'inability to process a dip cycle for a part loaded on a conveyorcontrolled by PLC 13. As will be seen, back-up cells may perform interimdip steps in a particular recipe in the event that the primary cell isbusy or does not have a processing machine available for the next dipcycle. Each PLC in the back-up cells A 41 and B 51 control their ownadjacent set of rapid dry and final conveyors, any environmentalequipment surrounding the conveyors, and the initiation of each of theircell's processing machines. The primary PLC 13 also controls theseelements in its own cell.

As seen in FIG. 3, each cell consists of a grouping of machinesconnected to a master cell PLC (13, 21, 22). Each machine communicateswith their respective master PLC via a local I/O network 32 aspreviously described. A central robot 33 moves wax or foam molds fromthe load conveyor 24 at the off-load station 34 and to a processingmachine as dictated by a dip cycle held in individual shell partrecipes, which are downloaded via the ICA into the PLC 13. As is wellknown in the industry, various types of machines are used in each cellof a casting shell processing plant. Pre-wet 37 and slurry tanks 36supply premixed coatings into which a casting mold is dipped so thatsand or other particulate materials will adhere to the mold. Rainfall 38and barrel 43 sanders provide a means for fluidizing sand around a moldso that all surfaces of the coated mold are covered with sand (or otherparticulate material) without damaging it. Rapid dry conveyors 27 conveycoated parts to climate controlled rooms for drying between dip cyclesin accordance with pre-selected drying conditions. And final dryconveyors 28 move completed shells to an unloading area 60 and forextended drying. Further comment as to the use and operation ofindividual machines used in the processing of casting shells will beomitted inasmuch as it is not pertinent to an understanding of thepresent invention.

Referring now to FIG. 4, it may be seen that the ICA may be programmedwith a multitude of casting shell recipes. The listing shows a specificrecipe number, the maximum number of dip cycles, and a description ofthe metal part that will be created in the completed casting shell. TheICA allows selection and editing of a particular recipe as for examplethe vane segment part as listed in FIG. 5 showing its associated recipeNo. 11345. As shown in the figure, individual dip cycles are broken downin fields listing the applicable cell robot, which conveyors the shellshall be retrieved from and delivered to, dry times on the applicableconveyor, and a series of associated robot commands pre-stored in theapplicable cell robot's memory. By way of example, dip cycle 3 forrecipe No. 11345 for a vane segment indicates that backup robot 52 ofcell B (51) will execute robot subroutines 403, 428, and 700. Robotsused in casting operations have their own on-board memory storage andprocessing for robot moves. Various types of teach pendant applicationsallow for the storage of various robot moves in the robot memory. Asuccession of moves in a pre-selected coordinate system may also bestored in the robot's memory as numbered subroutines and referenced forexecution by number.

A typical robot used in casting shell handling systems is an IRB 4400manufactured by Asea Brown Boveri (ABB). A robot from the IRB 4400series has its own computing and I/O resources similar to a PC, andusually includes pre-loaded high-level application-oriented programminglanguage interpreters and debug procedures for creating separatenumbered robot movement subroutines. For example, as shown in FIG. 6,subroutine 403 in dip cycle No. 3 commands the robot's arm to move the11345 shell into a concrete slurry tank for a predetermined soakingperiod. Subroutines 428 cause the robot to execute a series of moves toaccomplish a draining procedure from the slurry tank, and 700 (FIG. 7)causes the shell to be sawdusted. As shown in FIG. 9, the drying timeprior to proceeding to the next dip cycle is 50 minutes. Each of theserobot subroutines were created and stored specifically to accommodate aspecified shell mold part.

Each dip cycle listed in the ICA generates a unique 16 bit control wordas shown in FIG. 8 which, in association with the robot moves and dryingtime for that cycle, holds all the information needed to perform thatparticular dip cycle. Referring to our previous example, dip cycle 3generates the control word 0001001010001000 which is 4744_(base 10). Bit15 indicates whether the PLC is ready for the ICA server to transmit thenext control word and robot moves in the next dip cycle to the PLC. TheICA monitors the image of each PLC on the network via the DDE databasein order to provide information to PLC upon request. Upon finishing thelast move specified in a dip cycle, the robot issues an END OF CYCLEcommand to the PLC (as it does after the completion of each robotsubroutine) and the PLC updates bit 15 to a 1. The ICA running on theserver then transfers the next dip cycle to the PLC, overwriting theprevious dip cycle's memory location in the PLC. Bit 15 has an importantfunction in that it allows a PLC to be updated by the server for thenext dip cycle during the time that that part is drying, but withoutinhibiting the PLC from proceeding with other dip cycles of other parts.Bit 15 also allows a reduced amount of memory to be kept in a PLCregarding each dip cycle without reducing the continued autonomousactivity of the cell.

Bits 14-12 specify a processing robot as selected in the ICA interface.Multiple Is in bits 14-12 can indicate (though not in this example) thatmultiple robots are allowed to execute a particular dip cycle. Bits11-10 are reserved, and bits 9-6 and 5-2 indicate which pick-up and setdown conveyors the shell may be retrieved from and delivered to,respectively. As shown in FIG. 2, each processing cell has its own rapiddry conveyor and final dry conveyor. Therefore, bits 4-3 necessarilyrefer to each robot's respective conveyor onto which a part is to bedeposited. Bit 1 is the last cycle indication flag which is updated inthe PLC by the server upon reaching the maximum number of dip cycles asspecified by the recipe. Bit 0 is set by a human operator through aremote terminal that will remove a hanger from the final dry conveyorafter the shell has sufficiently dried. Setting the bit 0 to 1 causesthe ICA to remove all references to mold part in the dynamic parametersof the system, but without affecting any previously created historyfiles listing processing history of a finished part.

FIG. 9 shows a snap shot of the PLC's memory listing the informationnecessary for the cell to autonomously perform the next dip cycle 4 onpart No. 11345 that was loaded into the primary PLC at time of entry ofthe part into the handling system. Each PLC has memory allocated toevery hanger holding a mold part on its respective conveyors. Thatmemory includes the previously discussed control word code 4744, whichis the decimal equivalent of the control word, an associated RF tagnumber, the next dip number, the current move number, current and nextdry times, a hanger status bit (0=enable, 1=disable), the prescribedrobot moves for the dip cycle, and some environment information such astemperature, relative humidity, speed of drying fans, etc., pertinent tothe process of dipping the mold part.

PLCs such as the Allen Bradley 500 series separate memory allocationinto processor image files and scanner I/O image files. This type ofarchitecture allows a PLC to continually update its scanner I/O memoryin discrete transfers independently of the PLC processor's operation ofupdating its own memory.

The memory of the PLC is preassigned addresses in accordance with all ofthe discrete positions on conveyors controlled by the particular PLC.Likewise, the downloaded information for each core contains the controlword, dip cycle member, drying time, robot moves, control parameters inthe drying zone controlled by the PLC.

FIG. 9 shows a formatted view of the previously described control wordfor part No. 11345 after loading into the PLC memory. This is in factthe logical image of various conveyors the PLC interfaces with. Memoryis divided into groups of 16 bit words. Each core type is assigned 1group made up of 1 or more 16 bit words.

FIG. 10 shows a logical flow of a typical load and process operation. Asa new casting mold part is loaded on the load conveyor 24, an RF sensorreads the parts associated tagged part number and passes it to the PLC.The DDE database 14 is, in turn, then updated and the ICA compares andmatches the tag number with a pre-loaded part number recipe in the SQLdatabase. The ICA then transfers the mold part's first dip cycle to theprimary cell 31 PLC 13 in accordance with the information structuredisplayed in FIG. 5. The PLC 13 writes to the memory to hold the firstdip cycle information in accordance with FIG. 9. This occurs well aheadof the arrival of the casting mold part at the primary cell 31, becausethe cell is either already processing other parts, or because of thedelay of the part in getting to the pickup point at the cell robot. Thecell will continue to process any other parts previously received in thecell as the part travels on the load conveyor 24 toward the primary cell31, which is the first cell to encounter the newly loaded mold part.Upon arrival at the pickup station adjacent to the primary cell's robot33, a photo sensor signals the PLC 13 that a mold part has arrived forprocessing. The pickup station may also include another RF tag reader tofacilitate part recognition. PLC 13 identifies which part is waiting onpickup station either by comparing the tag number of the newly arrivedpart with its own internal memory, or simply calculating which part hasarrived through an index pointer which had been continually updated inthe PLC's logical image area of the load conveyor.

After arrival and identification of the mold part at the cell, the PLC13 analyzes the control word for the arrived part and ascertains theavailability of the robot 33 and the cell's conveyors. If the robot anda designated set down conveyor are available, the PLC sends a pickupcommand move number to the robot 33 and sends the first dip cycle'srobot move subroutine already residing in its memory. Other associateddevices such as slurry tanks 36 and sanders 38 are initialized inaccordance with pre-set parameters or information downloaded by the ICAfrom the recipe database, and also in response to I/O signals generatedfrom the robot and received by the PLC. As each robot subroutine iscompleted in the dip cycle, an END OF MOVE signal from the robot causesthe PLC to send the next move command number to the robot. After therobot has finished the last move command in the current dip cycle, thePLC generates a set down command to the robot to place the mold part onone of the specified conveyors for drying.

Upon completion of the current dip cycle and after the hanger holdingthe mold part has been set down on an appropriate conveyor for drying,the PLC sets the READY FOR DATA BIT No. 15 in the control word to a 1and the server, which is constantly reviewing the PLC's memory image inthe DDE database, writes over the existing dip cycle PLC memory with thenext dip cycle control parameters.

It may be apparent from the foregoing control word structure and systemtopology that by placing a partially completed casting shell on thetransfer conveyor 26 between dip cycles, cells may “compete” for theopportunity to execute the next dip cycle on that part. For example, ifprimary cell 31 is unable to perform the next dip cycle on a part byrobot 33 due to a particular machine called for in the dip cycle beingunavailable, or in the event that PLC 13 sees that another cell robot isidle and parts are waiting at the cell 31 pickup zone 34 on the loadconveyor 24, PLC 13 can transfer over the local network a signal toanother PLC to read the current dip cycle information for the partloaded on the transfer conveyor and process the part's next dip cycle.

It will be apparent to those skilled in the art that with the properwriting of the PLC processor programs, processing of multiple partssimultaneously by incrementally utilizing backup cells is readilyachieved. The current system's topology, therefore, lends itself to cell“scalability” in the handling of casting mold parts as the number ofparts to be processed exceeds the primary cell processing capability.The system also is self-adapting and can process any number of differenttypes of shells loaded on the system to the extent that the appropriateprocessing machines are present in any cell in the system.

Since each PLC present in each cell in the system has at any instant intime a complete image of any mold parts waiting on its respectiveconveyors with their associated next dip cycles, the system can operatefor extended times without communication with the ICA server. A singledip cycle can take several hours to complete, depending upon the recipe,but server malfunctions, network and ICA errors will not affect thecontinued processing of parts already loaded in the system. Moreover,from an overall system throughput standpoint, the speed of processing ofshells in the system is not dependent upon the ICA server's ability totransfer large amounts of data over a network. Once recipe processingdata has been downloaded into a PLC, that PLC will become the mastercontroller for processing that shell in the system.

The prior descriptions pertain to the handling system when in automaticmode (see FIG. 10). However, adjustments to the system may be made whilethe system is operational in order that conveyors may be suspended forrepairs, or in order for re-prioritizing shells for processingmidstream. In order to achieve these tasks, part of the system may beshifted into a manual mode as such that each robot or conveyor affectsbecomes “invisible” to the system, with all other components continuingto operate using available resources.

In automatic mode, as previously described, each PLC sends signals toeach conveyor in conjunction with the numbered robot moves sent to theircell's robot during a dip cycle, and each conveyor controlled by a PLCis indexed or inhibited during a dip cycle.

By way of example, a core is introduced to the system on a hangerproximal sensor 25 on load conveyor 24. The ICA receives the “tag”information from sensor 25 and matches the control word for the coretype with the recipe control words stored in the SQL database andupdates the DDE database. Information from the SQL, i.e. the recipe issent to the PLC network immediately. PLC 13 then increments conveyor 24,such that in due course the subject core and hanger reach off-loadstation 34, at which point PLC 13 matches the “tag” read with the recipecontrol words previously downloaded for the core. In keeping with theprior examples, recipe 11345 would be implemented for the core meaningthat robot 33 would move the hanger to conveyor 26 which would deliverthe hanger and core to cell B where robot 52 would off-load the hangerand core for processing. In cycle 1, robot 52 will implement routine203, 221, and 500, which have been previously stored in the PLC memory,the associated machinery will be engaged and utilized to build the shellabout the core until robot 52 off-loads the hanger core and shell to thefinal dry conveyor which delivers it to the unload area 60. Thissequence is more readily understood with reference to FIG. 10 wherein amore detailed representation in flow chart form is presented. Theautomated sequencing is presented in FIG. 11 relative to the pathanalysis procedure used by the system. FIG. 12 presents the empty hangerreturn procedure in logical format for returning the hanger for reusewith the next core.

As will be understood, FIG. 11 illustrates the general decision path asthe product moves through the process determining which conveyor type isrequired; however, with each conveyor pair shown in FIG. 11 theprocedure of FIG. 12 is executed to properly determine the path forproduct at any given time such that the product is always sent to anavailable path for pick up and set down relative to the requiredconveyors.

In order to increase efficiency in the system, a designated status PLCmay reside on the production floor to gather information as to thestatus of various critical areas in the production line via the localI/O links to each PLC. Since a memory image of each PLC is maintained inthe DDE database, the ICA may monitor the status PLC's image and sendcommands to individual PLCs to reorder dip cycles and processing ofparts, thereby increasing throughput of the processing line.

As is apparent, the configuration of the number of cells, the number ofconveyors, and the interaction of each cell through multiple transferconveyors will change in response to the needs of a particular castingshell operation. Also, while the present embodiment uses a singleprimary PLC that receives all incoming loaded mold parts and controlsthe distribution of parts loaded on the transfer conveyor, it isenvisioned that multiple primary PLCs may be used on multiple incomingload conveyors. The current invention's topology can accommodatevariations of this sort with minor variations in the PLCs' processorprogram. Therefore, while the invention is shown in one preferredembodiment, it will be obvious to those skilled in the art that it isnot so limited but is susceptible to various changes and modificationsin the cell and conveyor configuration without departing from the spiritthereof. Furthermore, the herein disclosed elements and systemarchitecture can be applied to any form of assembly production line suchas, by way of example, automobile assembly, plane assembly, textilemanufacturing, electronics assembly, and food packing.

REFERENCES

ABB FLEXIBLE AUTOMATION INC., ABB ASEA BROWN BOVERI, ART. No. 3HAB0009-69 ISSUE M94A/REV. 1, PRODUCT MANUAL IRB 4400 (1994).

ALLEN-BRADLEY, INC., PUB. No. 1747-6.2, SLC 500 MODULAR HARDWARE STYLEINSTALLATION AND OPERATIONS MANUAL (1995).

ALLEN-BRADLEY, INC., PUB. No. 1747-6.6, REMOTE I/O SCANNER USER MANUAL(1996).

MICROSOFT CORP., P/N 097-0001788, MICROSOFT SQL SERVER RESOURCE GUIDE(1997).

S-S TECHNOLOGIES, INC., SDMS.DOC REV. 5.13, 5136-SD USER'S GUIDE (1995).

U.S. STEEL CORP., THE MAKING, SHAPING AND TREATING OF STEEL (7TH ED.1957).

WONDERWARE CORP., P/N 05-047 REV. I, DDE SERVER TOOLKIT USER'S GUIDE(1995).

WONDERWARE CORP., P/N 05-116 REV. A, EXTENSIBILITY TOOLKIT FOR INTOUCHUSER'S GUIDE (1994).

WONDERWARE CORP., P/N 05-158 REV. A, INTOUCH USER'S GUIDE (1995).

Having set forth the nature of the present invention, what is claimedis:
 1. An industrial control system for controlling machines processinginvestment casting shells, comprising: a. processing recipe means fordescribing a sequence of processing steps for a selected casting shell,each said recipe means including a series of dip cycles; b. storagemeans for holding a plurality of said recipe means; c. processing meansfor associating one of said recipe means with a casting shell loadedonto a loading conveyor, said processing means including means foridentifying a single dip cycle within said associated recipe means; d.programmable logic means for autonomous control over said machines afterreceipt of said single dip cycle; and, e. network means for passing saidsingle dip cycle to said programmable logic means.
 2. A control systemas recited in claim 1, wherein said programmable logic means comprises:a. a processor; b. main processor memory; c. an executable controlprogram loaded into said main processor memory for processing by saidprocessor; d. means for local I/O communications with said machines on aproduction line; e. a scanning memory for asynchronous communicationwith said machines over said local I/O means; and, f. network I/O meansfor bi-directional communications with said executable control program.3. A control system as recited in claim 2, wherein said network I/Omeans comprises a network card installed in a computer workstation, anetwork card installed in said programmable logic means, and acommunications cable connecting said cards, and wherein said network I/Omeans is capable of sustained communication rates of at least 10mega-bits/second.
 4. A control system as recited in claim 1, whereinsaid processing recipe means comprises electronically transmissiblesignals including representations of: a. a series of processing cycles;b. a single control word contained within each said cycle; and, c. aleast one numbered robot subroutine specifying one or more robot movesin each said cycle.
 5. A control system as recited in claim 4 whereinsaid control word comprises a 16 bit word for specifying processingparameters and for signaling said processing means to transfer a singledip cycle to said programmable logic means.
 6. A control system asrecited in claim 4, wherein said storage means comprises a bifurcateddatabase for holding said recipe means in one half and production linestatus information to be held in said other half.
 7. An industrialcontrol system utilizing a computer workstation for controlling a seriesof machines on a production line, comprising: a. means for holding aplurality of control parameters; b. means for selecting a subset of saidcontrol parameters in response to signals received from said productionline wherein said selecting means comprises an industrial controlapplication program running on a computer workstation, said applicationprogram capable of tagging and communicating with various elements onsaid production line, and wherein said application program includes acustomizable man machine interface for achieving said tagging; c.programmable logic means for controlling said machines on saidproduction line after receipt of said subset of control parameters, saidlogic means capable of autonomous control of said machines independentof activity by said selecting means after receipt of said subset; and,d. means for electronically connecting said selecting means to saidprogrammable logic means for communicating said subset to saidprogrammable logic means.
 8. In combination with an investment castingshell production line including a computer workstation having means fornetwork communication, at least one processing cell having a centralrobot and a plurality of processing machines, a plurality of conveyorsfor moving casting shells to and from said cell for processing, a sensoradjacent one of said conveyors signaling a loading of a new castingshell on one of said conveyors, and a pre-defined set of processingrecipes means for describing a sequence of processing steps associatedwith a selected type of casting shell, an industrial control systemcomprising: a. storage means for holding said set of processing recipes;b. industrial control means running on said computer workstation forprocessing signals from said production line and in response supplyingcontrol parameters derived from a selected one of said recipes to saidcell; c. means for electronically transmitting said control parametersto said cell; and, d. logic means associated with said cell fordistributing said control parameters to said processing machines, saidlogic means including processing means for detached autonomousdistribution of said control parameters to said processing machinesindependent of actions by said industrial control means.
 9. A controlsystem as recited in claim 8, wherein said logic means comprises: a. aprocessor; b. main processor memory; c. an executable control programloaded into said main processor memory for processing by said processor;d. means for local I/O communications with said machines on saidproduction line; e. a scanning memory for asynchronous communicationwith said machines over said local I/O means; and, f. network I/O meansfor bi-directional communications with an industrial control program.10. A control system as recited in claim 9 wherein said network I/Omeans comprises a network card installed in said computer workstation, anetwork card installed in said logic means, and a communications cableconnecting said cards, and wherein said network means is capable ofsustained communication rates of at least 10 mega-bits/second.
 11. Acontrol system as recited in claim 8, wherein said processing recipemeans comprises: a. a series of processing cycles; b. a single controlword contained within each said cycle; and, c. a least one numberedrobot subroutine specifying one or more robot moves in each said cycle.12. A control system as recited in claim 11 wherein said control wordcomprises a 16 bit word for specifying processing parameters and forsignaling said industrial control means to transfer a single dip cycleto said programmable logic means.
 13. A control system as recited inclaim 8 wherein said storage means comprises a bifurcated database forholding said recipe means in one half and production line statusinformation to be held in said other half.
 14. A control system asrecited in claim 8 wherein said processing means comprises an industrialcontrol application program running on a computer workstation, saidapplication program capable of tagging and communicating with variouselements on said production line, and wherein said application programincludes a customizable man machine interface for achieving saidtagging.
 15. In combination with an investment casting shell productionline including a computer workstation running an industrial controlprogram and having means for network communication, storage meansaccessible by said industrial control program, at least one processingcell having a central robot, a plurality of processing machines, and aprogrammable logic controller connected to said robot and saidprocessing machines over a local network said logic controller having aprocessing memory and a scanning memory, a plurality of conveyors formoving casting shells to and from said cell for processing, a sensoradjacent one of said conveyors signaling a loading of a specifiedcasting shell on one of said conveyors, and a pre-defined set ofprocessing recipes stored in said storage means for describing asequence of processing steps associated with a selected type of castingshell, a method for said logic controller to manage each machine in saidprocessing cell through a discrete series of dip cycles, comprising thesteps of: a. downloading a single control parameter representing a dipcycle from said computer workstation to said logic controller; b.setting up a logical device image corresponding to each processingmachine specified in said control parameter and loading pre-definedmachine settings into said logic image as specified in said controlparameter; c. transmitting said settings to each said machine over saidlocal network; d. processing a single dip cycle; and, e. moving saidspecified casting shell to a conveyor for drying.